package com.joker.aigc.chat.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.joker.aigc.chat.domain.dto.ContactQueryCriteria;
import com.joker.aigc.chat.domain.entity.Contact;
import com.joker.aigc.chat.domain.vo.ContactVo;

import java.util.List;
import java.util.Map;

/**
 * @author 20346
 * @description 针对表【message(消息表)】的数据库操作Service
 * @createDate 2023-12-17 11:26:08
 */
public interface ContactService extends IService<Contact> {

    Page<ContactVo> getRoomPage(Long uid, ContactQueryCriteria criteria);

    Map<Long, Integer> getUnReadCountMap(Long uid, List<Contact> contacts);

    Map<Long, Integer> getUnReadCountMapByIds(Long uid, List<Long> roomIds);

    ContactVo getContactDetail(Long uid, Long roomId);

    ContactVo getContactDetailByFriend(Long uid, Long friendId);

}
